Kamino Project

content status & project management


# read only, authentication not needed with shared link
gs4_deauth()
path <- "https://docs.google.com/spreadsheets/d/150N38yVYhbGq6NzScBvXQkLCVr9owAmCafzOy2r3gV4/edit?usp=sharing"

Activities

Plan & Process

goals and objectives of analysis

  • why
  • systems
  • models
  • collections
  • methods
df_plan <- read_sheet(path, sheet = 1)
df_plan

Ingest

acquire data sources

  • tabular
  • relational
  • unstructured
  • pdf
  • web
  • social media
df_ingest <- read_sheet(path, sheet = 2)
df_ingest

Wranglers

transform data for optimal use

  • evaluate
  • prepare
  • reduce
  • extend
  • arrange
  • structure
  • domain
  • preserve
df_wranglers <- read_sheet(path, sheet = 3)
df_wranglers

Analytics

reveal insights

  • calculate
  • discover
  • time-Series
  • measure
  • geospatial
  • graph
  • text-analytics
df_analytics <- read_sheet(path, sheet = 4)
df_analytics

Views

design principles for visualization

  • design
  • perception
  • acuity
  • form
  • layouts
df_views <- read_sheet(path, sheet = 5)
df_views

Charts

design a quantitative view

  • correlation
  • deviation
  • distribution
  • magnitude
  • part-to-whole
  • ranking
  • multiples
df_charts <- read_sheet(path, sheet = 6)
df_charts

Diagrams

design a schematic view

  • concept
  • event
  • logic
  • structure
  • system
  • organization
df_diagrams <- read_sheet(path, sheet = 7)
df_diagrams

Graphs

design a relational view

  • characteristics
  • operations
  • link analysis
  • social network analysis
  • association
  • flow
df_graphs <- read_sheet(path, sheet = 8)
df_graphs

Maps

design a geospatial view

  • map making
  • area
  • point
  • abstract
  • path
  • space and time
  • perspective
df_maps <- read_sheet(path, sheet = 9)
df_maps

Semiographics

design a symbolic view

  • meaning
  • representation
df_semiographics <- read_sheet(path, sheet = 10)
df_semiographics

Tables

design a tabular view

  • chart table
  • periodic table
  • symbol table
df_tables <- read_sheet(path, sheet = 11)
df_tables

Temporals

design an event view

  • observables
  • change
  • flow
  • resemblance
  • finance
  • chronology
  • duration
df_temporals <- read_sheet(path, sheet = 12)
df_temporals

Trees

design a hierarchical view

  • space-filling
  • node-link
df_trees <- read_sheet(path, sheet = 13)
df_trees

Storytelling

design a presentation

  • purpose
  • design
  • structure
  • creation
  • production
df_storytelling <- read_sheet(path, sheet = 14)
df_storytelling

Summit

best practices and standards

  • impact
  • literacy
  • professional standards
df_summit <- read_sheet(path, sheet = 15)
df_summit

Case Studies

applying lifecycle to cases

df_case_studies <- read_sheet(path, sheet = 16)
df_case_studies

Concatenate catalog

df_catalog <- rbind(df_plan, df_ingest, df_wranglers, df_analytics, df_views, df_charts, df_diagrams, df_graphs, df_maps, df_semiographics, df_tables, df_temporals, df_trees, df_storytelling, df_summit)

df_catalog <- df_catalog %>% mutate(ACTIVITY = factor(ACTIVITY, 
                                                         levels = c("2-plan", 
                                                                    "3-ingest", 
                                                                    "4-wranglers", 
                                                                    "5-analytics", 
                                                                    "6-views", 
                                                                    "7-charts", 
                                                                    "8-diagrams", 
                                                                    "9-graphs", 
                                                                    "10-maps", 
                                                                    "11-semiographics", 
                                                                    "12-tables",
                                                                    "13-temporals",
                                                                    "14-trees",
                                                                    "15-storytelling",
                                                                    "16-summit")), 
                                    SUB_ACTIVITY = factor(SUB_ACTIVITY),
                                    TASK = factor(TASK),
                                    STATUS = factor(STATUS),
                                    TEAM = factor(TEAM))

df_catalog

Summary Content Views

Summary Content Views

by activity

theme_opts <- theme(
    text = element_text(family = "roboto_mono", size = 16), 
    plot.title = element_text(color = "black", size = 16, face = "bold"),
    plot.subtitle = element_text(color = "black", size = 12),
    plot.caption = element_text(color = "#555555", size = 10),
    # axis.title.x = element_blank(),
    # axis.title.y = element_blank(),
    # axis.text.x = element_text(vjust = 12),
    panel.border = element_blank(),
    panel.background = element_blank(),
    # panel.grid.minor = element_blank(),
    # panel.grid.major = element_blank(),
    legend.position='none'
)

activity_palette <- c("2-plan" = "#B71C1C", 
                      "3-ingest" = "#880E4F", 
                      "4-wranglers" = "#4A148C", 
                      "5-analytics" = "#311B92", 
                      "6-views" = "#1A237E", 
                      "7-charts" = "#0D47A1", 
                      "8-diagrams" = "#01579B", 
                      "9-graphs" = "#006064", 
                      "10-maps" = "#004D40", 
                      "11-semiographics" = "#1B5E20", 
                      "12-tables" = "#33691E",
                      "13-temporals" = "#9E9D24",
                      "14-trees" = "#F57F17",
                      "15-storytelling" = "#FF6F00",
                      "16-summit" = "#E65100"
)
df_activity_summary <- df_catalog %>% group_by(ACTIVITY) %>% count()
df_activity_summary
v_activity_summary <- ggplot(df_activity_summary, aes(x = n, y = ACTIVITY, fill = ACTIVITY)) + 
  geom_bar(stat = "identity") +
  scale_y_discrete(limits = rev) +
  scale_fill_manual(values = activity_palette) +
  labs( title = "Kamino Activity Summary",
        subtitle = "Content View",
        caption = NULL,
        x = "count of articles",
        y = NULL) +
  theme_bw() +
  theme_opts

girafe(ggobj = v_activity_summary, width_svg = 1280/72, height_svg = 720/72,
       options = list(opts_sizing(rescale = TRUE, width = 0.75))
)

Summary Content Views

by sub-activity

df_sub_activity_summary <- df_catalog %>% group_by(ACTIVITY, SUB_ACTIVITY) %>% count()
df_sub_activity_summary

Summary Content Views

by task

df_task_summary <- df_catalog %>% group_by(ACTIVITY, SUB_ACTIVITY, TASK) %>% count()
df_task_summary

Summary Status Views

by activity

df_activity_status_summary <- df_catalog %>% group_by(ACTIVITY, STATUS) %>% count()
df_activity_status_summary
v_activity_status_summary <- ggplot(df_activity_status_summary, aes(x=n, y=ACTIVITY, fill=STATUS)) + 
  geom_bar(position="stack", stat="identity") +
  scale_y_discrete(limits = rev) +
  # scale_fill_manual(values = activity_palette) +
  labs( title = "Kamino Activity Summary",
        subtitle = "Status View",
        caption = NULL,
        x = "count of articles by status",
        y = NULL) +
  theme_bw() +
  theme_opts

girafe(ggobj = v_activity_status_summary, width_svg = 1280/72, height_svg = 720/72,
       options = list(opts_sizing(rescale = TRUE, width = 0.75))
)

Summary Status Views

Summary Status Views

by sub-activity

df_subactivity_status_summary <- df_catalog %>% group_by(ACTIVITY, SUB_ACTIVITY, STATUS) %>% count()
df_subactivity_status_summary
v_subactivity_status_summary <- ggplot(df_subactivity_status_summary, aes(x=n, y=SUB_ACTIVITY, fill=STATUS)) + 
  geom_bar(position="stack", stat="identity") +
  scale_y_discrete(limits = rev) +
  facet_grid(rows = vars(ACTIVITY), scales = "free_y", space = "free") +
  labs( title = "Kamino Activity Summary",
        subtitle = "Status View",
        caption = NULL,
        x = "count of articles by status",
        y = NULL) +
  theme_bw() +
  theme_opts

girafe(ggobj = v_subactivity_status_summary, width_svg = 1280/72, height_svg = 1280/72,
       options = list(opts_sizing(rescale = TRUE, width = 0.75))
)

Summary Team Views

Activity

Sub-Activity